<!DOCTYPE html>
<!-- saved from url=(0048)https://js13kgames.com/games/minipunk/index.html -->
<html lang="en"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

<title>MINIPUNK</title>
<style>
html,
body {
width: 100%;
height: 100%;
margin: 0px;
border: 0;
overflow: hidden;
display: block;
background: #000;
}

canvas {
position: absolute;
left: 0;
top: 0;
width: 100vw;
height: 100vh;
}
</style>
<script charset="utf-8" src="chrome-extension://pngicgippofneelinabebobnkpmdiphn/js/btype.js"></script><script type="text/javascript" charset="utf-8" src="chrome-extension://pngicgippofneelinabebobnkpmdiphn/js/chrome.js"></script></head>
<body>
<canvas width="1536" height="674"></canvas>
<canvas width="1536" height="674"></canvas>
<script>
'use strict';let aa={b:5513,c:21,d:[{a:7,b:2,d:0,e:1,f:196,h:7,i:0,j:0,k:1,l:195,n:0,o:100,q:22,r:3636,s:194,t:2,u:612,v:254,w:6,x:0,p:[1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],c:[{n:[135,0,0,0,0,0,0,0,135,0,0,0,0,0,0,0,135,0,0,0,0,0,0,0,135,0,0,0,0,0,0,0]}]},{a:8,b:0,d:0,e:1,f:82,h:8,i:0,j:0,k:0,l:0,n:255,o:100,q:0,r:9090,s:130,t:3,u:5200,v:63,w:0,x:0,p:[1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],c:[{n:[0,0,0,0,147,0,0,0,0,0,0,0,147,0,0,0,0,0,0,0,147,0,0,0,0,0,0,0,147,0,0,0]}]},{a:7,b:0,d:0,e:0,f:130,
h:7,i:0,j:9,k:0,l:128,n:0,o:197,q:548,r:12631,s:100,t:2,u:11025,v:255,w:2,x:49,p:[1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2,1,2],c:[{n:[128,0,128,0,128,0,128,0,128,0,128,0,128,0,128,0,131,0,131,0,131,0,131,0,131,0,131,0,131,0,131,0]},{n:[128,0,128,0,128,0,128,0,128,0,128,0,128,0,128,0,126,0,126,0,126,0,126,0,126,0,126,0,126,0,126,0]}]},{a:7,b:0,d:0,e:0,f:125,h:4,i:0,j:0,k:0,l:57,n:0,o:100,q:351,r:7105,s:125,t:4,u:5839,v:254,w:4,x:63,p:[0,0,0,0,0,0,1,1,2,2,1,1,0,0,0,0,1,1],c:[{n:[164,0,0,0,167,0,0,0,164,
0,0,0,162,0,0,0,164,0,0,0,167,0,0,0,164,0,0,0,162,0,0,0]},{n:[164,0,0,0,167,166,167,166,167,0,0,0,0,0,0,0,164,0,0,0,162,0,162,0,162,0,0,0,0,0,0,0]}]},{a:7,b:0,d:0,e:0,f:162,h:7,i:0,j:0,k:0,l:160,n:0,o:10137,q:68770,r:5614,s:110,t:0,u:11025,v:255,w:0,x:0,p:[0,0,1,2,1,2,0,0,0,0,1,2,1,2,1,2,1,2],c:[{n:[116,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,119,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]},{n:[116,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,114,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]}]},{a:7,b:0,d:0,e:0,f:131,h:8,i:0,j:0,k:0,l:130,n:64,o:22456,
q:5614,r:2193,s:125,t:3,u:4067,v:176,w:6,x:44,p:[0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1],c:[{n:[152,0,0,0,140,0,0,0,155,0,0,0,143,0,0,0,152,0,0,0,140,0,0,0,150,0,0,0,138,0,0,0]}]}],a:80};function ba(a,b,c){c=b.w*c>>1;b=b.x/255;let d=0;for(;d<a.length-c;)a[d+c]+=a[d]*b,d++}function ca(a){let b=da.createBuffer(1,a.length,44100);b.getChannelData(0).set(a);return b}
function ea(a,b,c,d){let f=0,g=0,k=.00390625*Math.pow(1.059463094,b+12*(a.g.a-8)+a.g.b-128)*(1+8E-4*a.g.d);b=.00390625*Math.pow(1.059463094,b+12*(a.g.h-8)+a.g.i-128)*(1+8E-4*a.g.j);let l=a.g.v/255,h=0,e=0,v=c.length;for(var u=a.m+a.A+a.B-1;0<=u;--u){let L=u+d;var t=1;u<a.m?t=u/a.m:u>=a.m+a.A&&(t-=(u-a.m-a.A)/a.B);var q=k;a.g.e&&(q*=t*t);f+=q;let J=2*Math.max(-.3,Math.min(.3,Math.sin(6.283184*f)))*a.g.f;q=b;a.g.k&&(q*=t*t);g+=q;J+=2*Math.max(-.3,Math.min(.3,Math.sin(6.283184*g)))*a.g.l;a.g.n&&(J+=
(2*Math.random()-1)*a.g.n*t);J*=t/255;t=1.5*Math.sin(3.141592*a.g.u/44100);h+=t*e;q=l*(J-e)-h;e+=t*q;switch(a.g.t){case 1:J=q;break;case 2:J=h;break;case 3:J=e;break;case 4:J=h+q}J*=.00476*a.g.s;L<v&&(c[L]+=J)}}class fa{constructor(a,b){this.g=a;this.C=b||5605;this.m=a.o;this.A=a.q;this.B=a.r}}
function ha(a){function b(){if(f<c.g.d.length){f+=1;{var g=c.g.d[f-1],k=b;let h=new Float32Array(c.m),e=c.g.b,v=c.g.c,u=new fa(g,e),t=0,q=0,L=0;for(;q<v-1;){var l=g.p[q];l&&(l=g.c[l-1].n[L])&&ea(u,l,h,t);t+=e;32===++L&&(L=0,q++)}ba(h,g,e);for(g=0;g<h.length;g++)d[g]+=h[g];k()}}else a(d)}var c=new ia(aa);let d=new Float32Array(c.m),f=0;b()}class ia{constructor(a){this.g=a;this.m=44100*a.a}}
function ja(a,b,c){{a=new fa(a);let d=new Float32Array(a.m+a.A+a.B-1+32*a.C);ea(a,b,d,0);ba(d,a.g,a.C);c(ca(d))}};let da=new AudioContext,ka=da.createGain();ka.gain.value=.25;ka.connect(da.destination);let ma=da.createGain();ma.connect(da.destination);let na=null,oa=null,pa=null;function qa(a,b){if(a){var c=da.createBufferSource();c.buffer=a;c.loop=!!b;c.connect(b?ka:ma);c.start()}};function ra(a){for(;a>Math.PI;)a-=2*Math.PI;for(;a<-Math.PI;)a+=2*Math.PI;return a}function sa(a){return 0<a?1:0>a?-1:0};function m(){return new Float32Array(3)}function ta(a){var b=new Float32Array(3);b[0]=a[0];b[1]=a[1];b[2]=a[2];return b}function n(a,b,c){let d=new Float32Array(3);d[0]=a;d[1]=b;d[2]=c;return d}function ua(a,b){a[0]=b[0];a[1]=b[1];a[2]=b[2]}function p(a,b,c,d){a[0]=b;a[1]=c;a[2]=d}function va(a,b,c){a[0]=b[0]+c[0];a[1]=b[1]+c[1];a[2]=b[2]+c[2]}function wa(a,b,c){a[0]=b[0]-c[0];a[1]=b[1]-c[1];a[2]=b[2]-c[2]}function xa(a,b,c){a[0]=b[0]*c;a[1]=b[1]*c;a[2]=b[2]*c}
function ya(a,b,c){var d=r;a[0]=b[0]+c[0]*d;a[1]=b[1]+c[1]*d;a[2]=b[2]+c[2]*d}function za(a,b){var c=b[0];let d=b[1],f=b[2];c=c*c+d*d+f*f;0<c&&(c=1/Math.sqrt(c),a[0]=b[0]*c,a[1]=b[1]*c,a[2]=b[2]*c)}function Aa(a,b,c){var d=Ba;let f=[],g=[];f[0]=b[0]-d[0];f[1]=b[1]-d[1];f[2]=b[2]-d[2];g[0]=f[0];g[1]=f[1]*Math.cos(c)-f[2]*Math.sin(c);g[2]=f[1]*Math.sin(c)+f[2]*Math.cos(c);a[0]=g[0]+d[0];a[1]=g[1]+d[1];a[2]=g[2]+d[2]}
function Ca(a,b,c){var d=Ba;let f=[],g=[];f[0]=b[0]-d[0];f[1]=b[1]-d[1];f[2]=b[2]-d[2];g[0]=f[2]*Math.sin(c)+f[0]*Math.cos(c);g[1]=f[1];g[2]=f[2]*Math.cos(c)-f[0]*Math.sin(c);a[0]=g[0]+d[0];a[1]=g[1]+d[1];a[2]=g[2]+d[2]}let Ba=m(),Da=n(0,0,1),w=m();function Ea(){var a=new Float32Array(16);a[0]=1;a[1]=0;a[2]=0;a[3]=0;a[4]=0;a[5]=1;a[6]=0;a[7]=0;a[8]=0;a[9]=0;a[10]=1;a[11]=0;a[12]=0;a[13]=0;a[14]=0;a[15]=1;return a}function Fa(a){a[0]=1;a[1]=0;a[2]=0;a[3]=0;a[4]=0;a[5]=1;a[6]=0;a[7]=0;a[8]=0;a[9]=0;a[10]=1;a[11]=0;a[12]=0;a[13]=0;a[14]=0;a[15]=1}
function Ga(a,b,c){var d=Math.sin(c);c=Math.cos(c);var f=b[0],g=b[1],k=b[2],l=b[3],h=b[8],e=b[9],v=b[10],u=b[11];b!==a&&(a[4]=b[4],a[5]=b[5],a[6]=b[6],a[7]=b[7],a[12]=b[12],a[13]=b[13],a[14]=b[14],a[15]=b[15]);a[0]=f*c-h*d;a[1]=g*c-e*d;a[2]=k*c-v*d;a[3]=l*c-u*d;a[8]=f*d+h*c;a[9]=g*d+e*c;a[10]=k*d+v*c;a[11]=l*d+u*c};function x(a,b,c){return 4278190080+(c<<16)+(b<<8)+a}function Ha(a,b,c){var d=6*a|0;var f=6*a-d;a=c*(1-b);var g=c*(1-f*b);b=c*(1-(1-f)*b);switch(d%6){case 0:var k=c;var l=b;var h=a;break;case 1:k=g;l=c;h=a;break;case 2:k=a;l=c;h=b;break;case 3:k=a;l=g;h=c;break;case 4:k=b;l=a;h=c;break;case 5:k=c,l=a,h=g}return x(255*k|0,255*l|0,255*h|0)}function Ia(a,b){var c=Ja;let d=1-b;return x(a[0]*d+c[0]*b|0,a[1]*d+c[1]*b|0,a[2]*d+c[2]*b|0)}let Ja=n(192,0,0);function Ka(){let a=Array(8).fill(0).map(()=>m());La(a,0,0,0,1,1,1);return a}function La(a,b,c,d,f,g,k){let l=b-f;b+=f;f=c-g;c+=g;g=d-k;d+=k;p(a[0],l,c,d);p(a[1],b,c,d);p(a[2],b,c,g);p(a[3],l,c,g);p(a[4],l,f,d);p(a[5],b,f,d);p(a[6],b,f,g);p(a[7],l,f,g)}function y(a,b,c){for(let d=0;d<b.length;d++)va(a[d],b[d],c)}function Ma(a,b,c){for(let d=0;d<b.length;d++)Aa(a[d],b[d],c)}function A(a,b,c){for(let d=0;d<b.length;d++)Ca(a[d],b[d],c)}
function Na(a,b,c){for(let l=0;l<b.length;l++){{var d=a[l],f=b[l],g=Ba,k=c;let h=[],e=[];h[0]=f[0]-g[0];h[1]=f[1]-g[1];h[2]=f[2]-g[2];e[0]=h[0]*Math.cos(k)-h[1]*Math.sin(k);e[1]=h[0]*Math.sin(k)+h[1]*Math.cos(k);e[2]=h[2];d[0]=e[0]+g[0];d[1]=e[1]+g[1];d[2]=e[2]+g[2]}}}function Oa(a,b,c){for(let d=0;8>d;d++){let f=4>d?b:c;a[d][0]*=f;a[d][5]*=f}};function E(a,b,c){{var d=b[0],f=b[1],g=b[3],k=f[0]-d[0],l=f[1]-d[1];f=f[2]-d[2];let h=g[0]-d[0],e=g[1]-d[1];d=g[2]-d[2];w[0]=l*d-f*e;w[1]=f*h-k*d;w[2]=k*e-l*h}za(w,w);k=[0,1,2,0,2,3];for(l=0;6>l;l++){d=k[l];for(g=0;3>g;g++)a.G[a.H++]=b[d][g];for(d=0;3>d;d++)a.D[a.C++]=w[d];a.J[a.g++]=c}}function Pa(a,b){var c=Qa.C;E(c,[a[0],a[1],a[2],a[3]],b);E(c,[a[7],a[6],a[5],a[4]],b);E(c,[a[1],a[0],a[4],a[5]],b);E(c,[a[3],a[2],a[6],a[7]],b);E(c,[a[0],a[3],a[7],a[4]],b);E(c,[a[2],a[1],a[5],a[6]],b)}
function Ra(a){G.bindBuffer(34962,a.F);G.bufferData(34962,a.G,a.usage);G.bindBuffer(34962,a.m);G.bufferData(34962,a.A,a.usage);G.bindBuffer(34962,a.B);G.bufferData(34962,a.D,a.usage)}
class Sa{constructor(a,b){this.usage=a;this.K=b||1E3;a=6*this.K;this.G=new Float32Array(3*a);this.A=new Uint8Array(4*a);this.J=new Uint32Array(this.A.buffer);this.D=new Float32Array(3*a);this.C=this.g=this.H=0;this.F=G.createBuffer();this.m=G.createBuffer();this.B=G.createBuffer()}L(){0!==this.g&&(G.bindBuffer(34962,this.F),G.vertexAttribPointer(Qa.B.B,3,5126,!1,0,0),G.bindBuffer(34962,this.m),G.vertexAttribPointer(Qa.B.D,4,5121,!0,0,0),G.bindBuffer(34962,this.B),G.vertexAttribPointer(Qa.B.F,3,5126,
!1,0,0),G.drawArrays(4,0,this.g))}};function Ta(){this.I=!1;this.V=0;this.R=9}function Ua(a){a.I?(a.V++,a.R=0):(a.V=0,a.R++)};let H=Array(256);for(let a=0;256>a;a++)H[a]=new Ta;document.addEventListener("keydown",function(a){a=a.keyCode;0<=a&&256>a&&(H[a].I=!0)});document.addEventListener("keyup",function(a){a=a.keyCode;0<=a&&256>a&&(H[a].I=!1)});let I=new class{constructor(){this.y=this.x=0;this.buttons=Array(3).fill(0).map(()=>new Ta);this.g=!1;this.sensitivity=5E-4}};class Va{constructor(){this.height=this.width=2;this.m=this.g=1}bind(){G.bindFramebuffer(36160,null);G.viewport(0,0,this.width,this.height)}};class Wa{constructor(a,b){this.width=a;this.height=b;this.g=G.createTexture();G.bindTexture(3553,this.g);G.texImage2D(3553,0,6408,a,b,0,6408,5121,null);G.texParameteri(3553,10241,9729);G.texParameteri(3553,10242,33071);G.texParameteri(3553,10243,33071);this.A=G.createFramebuffer();G.bindFramebuffer(36160,this.A);G.framebufferTexture2D(36160,36064,3553,this.g,0);this.m=G.createRenderbuffer();G.bindRenderbuffer(36161,this.m);G.renderbufferStorage(36161,33189,a,b);G.framebufferRenderbuffer(36160,36096,
36161,this.m)}bind(){G.bindFramebuffer(36160,this.A);G.viewport(0,0,this.width,this.height)}};function Xa(a,b){a=G.getAttribLocation(a.g,b);G.enableVertexAttribArray(a);return a}class Ya{constructor(a,b){a=Za(35633,a);b=Za(35632,b);this.g=G.createProgram();G.attachShader(this.g,a);G.attachShader(this.g,b);G.linkProgram(this.g)}bind(){G.useProgram(this.g)}}function Za(a,b){a=G.createShader(a);G.shaderSource(a,b);G.compileShader(a);return a};class $a extends Ya{constructor(){super("attribute vec4 a;attribute vec4 b;attribute vec3 c;uniform mat4 d;uniform mat4 e;uniform vec3 h;varying highp vec4 f;varying highp float i;void main(void){gl_Position=e*d*a;if (b.r>0.9||b.g>0.9||b.b>0.9){f=b;}else{highp vec3 j=normalize(vec3(-0.5,0.6,-0.7));highp float k=0.4+0.6*max(dot(c,j),0.0);f=vec4(k*b.rgb,1.0);}i=distance(a.xyz,h);}","varying highp vec4 f;varying highp float i;void main(void){if (f.r>0.9||f.g>0.9||f.b>0.9){gl_FragColor=f;}else{highp vec4 m=vec4(0.2,0.4,0.5,1.0);highp float n=(400.0-i)/(380.0);n=clamp(n,0.0,1.0);gl_FragColor=mix(m,f,n);}}");
this.B=Xa(this,"a");this.D=Xa(this,"b");this.F=Xa(this,"c");this.m=G.getUniformLocation(this.g,"d");this.A=G.getUniformLocation(this.g,"e");this.C=G.getUniformLocation(this.g,"h")}};class ab extends Ya{constructor(){super("attribute vec2 a;attribute vec2 b;varying highp vec2 c;void main(void){gl_Position=vec4(a.x,a.y,-1.0,1.0);c=b;}","varying highp vec2 c;uniform int d;uniform sampler2D e;highp float w[11];void main(void){w[0]=0.01;w[1]=0.02;w[2]=0.04;w[3]=0.08;w[4]=0.16;w[5]=0.38;w[6]=0.16;w[7]=0.08;w[8]=0.04;w[9]=0.02;w[10]=0.01;if(d==0){highp vec4 f=texture2D(e,c);if(f.r>0.95||f.g>0.95||f.b>0.95){gl_FragColor=f;}else{discard;}} else if(d==1||d==3){highp vec4 g=vec4(0.0);highp float s=0.0;for (int x=-5;x<=5;x++){highp vec4 f=texture2D(e, c + vec2(float(x)/512.0, 0.0));g.rgb +=w[x + 5] * f.rgb * f.a;s +=w[x + 5] * f.a;}if(s==0.0){gl_FragColor=vec4(0.0);}else{g.rgb/=s;g.a=s;gl_FragColor=g;}}else{highp vec4 g=vec4(0.0);highp float s=0.0;for(int y=-5;y<=5;y++){highp vec4 f=texture2D(e,c+vec2(0.0, float(y)/512.0));g.rgb+=w[y+5]*f.rgb*f.a;s+=w[y+5]*f.a;}if(s==0.0){gl_FragColor=vec4(0.0);}else{g.rgb/=s;g.a=s;gl_FragColor=g;}}}");
this.A=Xa(this,"a");this.m=Xa(this,"b");this.B=G.getUniformLocation(this.g,"d");this.C=G.getUniformLocation(this.g,"e")}};class bb extends Ya{constructor(){super("attribute vec2 a;attribute vec2 b;varying highp vec2 c;void main(void){gl_Position=vec4(a.x,a.y,0.0,1.0);c=b;}","varying highp vec2 c;uniform sampler2D d;uniform sampler2D e;void main(void) {highp vec4 f=texture2D(d,c);highp vec4 g=texture2D(e,c);gl_FragColor=vec4(f.rgb+2.0*g.a*g.rgb,1.0);}");Xa(this,"a");Xa(this,"b");this.A=G.getUniformLocation(this.g,"d");this.m=G.getUniformLocation(this.g,"e")}};class cb{constructor(){this.D=this.C=0;this.B=12;this.m=m();this.A=m();this.g=m()}set(a,b,c,d,f){this.g[0]=a;this.g[1]=b;this.g[2]=c;this.C=d;this.D=f}};function db(a){G.clearColor(0,0,0,1);G.clearDepth(1);G.enable(2929);G.depthFunc(515);G.enable(3042);G.blendFunc(770,771);G.clear(16640);var b=a.M,c=1/Math.tan((eb?50:60)*Math.PI/180/2),d=1/-4999.9;b[0]=c/(K.width/K.height);b[1]=0;b[2]=0;b[3]=0;b[4]=0;b[5]=c;b[6]=0;b[7]=0;b[8]=0;b[9]=0;b[10]=5000.1*d;b[11]=-1;b[12]=0;b[13]=0;b[14]=1E3*d;b[15]=0;Fa(a.D);c=b=a.D;var f=a.g.C;d=Math.sin(f);f=Math.cos(f);var g=c[4],k=c[5],l=c[6],h=c[7],e=c[8],v=c[9],u=c[10],t=c[11];c!==b&&(b[0]=c[0],b[1]=c[1],b[2]=c[2],
b[3]=c[3],b[12]=c[12],b[13]=c[13],b[14]=c[14],b[15]=c[15]);b[4]=g*f+e*d;b[5]=k*f+v*d;b[6]=l*f+u*d;b[7]=h*f+t*d;b[8]=e*f-g*d;b[9]=v*f-k*d;b[10]=u*f-l*d;b[11]=t*f-h*d;Fa(a.F);Ga(a.F,a.F,a.g.D);b=a.m;var q=a.D;c=a.F;d=q[0];f=q[1];g=q[2];k=q[3];l=q[4];h=q[5];e=q[6];v=q[7];u=q[8];t=q[9];var L=q[10],J=q[11],V=q[12],z=q[13],Z=q[14];q=q[15];var B=c[0],C=c[1],F=c[2],D=c[3];b[0]=B*d+C*l+F*u+D*V;b[1]=B*f+C*h+F*t+D*z;b[2]=B*g+C*e+F*L+D*Z;b[3]=B*k+C*v+F*J+D*q;B=c[4];C=c[5];F=c[6];D=c[7];b[4]=B*d+C*l+F*u+D*V;b[5]=
B*f+C*h+F*t+D*z;b[6]=B*g+C*e+F*L+D*Z;b[7]=B*k+C*v+F*J+D*q;B=c[8];C=c[9];F=c[10];D=c[11];b[8]=B*d+C*l+F*u+D*V;b[9]=B*f+C*h+F*t+D*z;b[10]=B*g+C*e+F*L+D*Z;b[11]=B*k+C*v+F*J+D*q;B=c[12];C=c[13];F=c[14];D=c[15];b[12]=B*d+C*l+F*u+D*V;b[13]=B*f+C*h+F*t+D*z;b[14]=B*g+C*e+F*L+D*Z;b[15]=B*k+C*v+F*J+D*q;Ga(a.m,a.m,Math.PI);c=b=a.m;g=a.O;d=g[0];f=g[1];g=g[2];b[0]=c[0]*d;b[1]=c[1]*d;b[2]=c[2]*d;b[3]=c[3]*d;b[4]=c[4]*f;b[5]=c[5]*f;b[6]=c[6]*f;b[7]=c[7]*f;b[8]=c[8]*g;b[9]=c[9]*g;b[10]=c[10]*g;b[11]=c[11]*g;b[12]=
c[12];b[13]=c[13];b[14]=c[14];b[15]=c[15];w[0]=-a.g.g[0];w[1]=-a.g.g[1];w[2]=-a.g.g[2];c=b=a.m;d=w[0];f=w[1];g=w[2];c===b?(b[12]=c[0]*d+c[4]*f+c[8]*g+c[12],b[13]=c[1]*d+c[5]*f+c[9]*g+c[13],b[14]=c[2]*d+c[6]*f+c[10]*g+c[14],b[15]=c[3]*d+c[7]*f+c[11]*g+c[15]):(k=c[0],l=c[1],h=c[2],e=c[3],v=c[4],u=c[5],t=c[6],L=c[7],J=c[8],V=c[9],z=c[10],Z=c[11],b[0]=k,b[1]=l,b[2]=h,b[3]=e,b[4]=v,b[5]=u,b[6]=t,b[7]=L,b[8]=J,b[9]=V,b[10]=z,b[11]=Z,b[12]=k*d+v*f+J*g+c[12],b[13]=l*d+u*f+V*g+c[13],b[14]=h*d+t*f+z*g+c[14],
b[15]=e*d+L*f+Z*g+c[15]);G.uniformMatrix4fv(a.B.A,!1,a.M);G.uniformMatrix4fv(a.B.m,!1,a.m);G.uniform3fv(a.B.C,a.g.g);a.C.L();fb.L()}
class gb{constructor(){this.N=new Wa(1920,1080);this.G=[new Wa(512,512),new Wa(512,512)];this.H=G.createBuffer();G.bindBuffer(34962,this.H);G.bufferData(34962,new Float32Array([-1,-1,1,-1,-1,1,1,-1,1,1,-1,1]),35044);this.J=G.createBuffer();G.bindBuffer(34962,this.J);G.bufferData(34962,new Float32Array([0,0,1,0,0,1,1,0,1,1,0,1]),35044);this.B=new $a;this.A=new ab;this.K=new bb;this.C=new Sa(35048,1E4);this.g=new cb;this.D=Ea();this.F=Ea();this.M=Ea();this.m=Ea();this.O=n(-1,1,1)}};function M(a,b,c,d){N.fillStyle="#000";N.fillText(a,b+1,c+1);N.fillStyle=d||"#fff";N.fillText(a,b,c)}function hb(a,b,c){N.strokeStyle=c;N.beginPath();N.arc(a,b,20,0,2*Math.PI);N.stroke()};function ib(a){switch(a){case 3:return Ha(116/360,.55+(.6-.55)*Math.random(),.45+(.5-.45)*Math.random());case 20:return x(64,255,255);case 21:return x(32,128,128);case 22:return x(255,64,255);case 23:return x(128,32,128);case 24:return x(255,128,64);case 25:return x(128,64,32);case 26:return x(255,255,255);case 27:return x(128,128,128);case 9:return Ha(0,0,.5+(.6-.5)*Math.random());case 10:return Ha(0,0,.2+(.22-.2)*Math.random());case 28:return x(128,0,0);case 29:return x(224,224,224)}return 0}
function jb(a,b){var c=fb,d=Math.floor(a[0]),f=Math.floor(a[1]),g=Math.floor(a[2]),k=w[0],l=w[1],h=w[2],e=sa(k),v=sa(l),u=sa(h),t=kb(a[0],k),q=kb(a[1],l);a=kb(a[2],h);var L=e/k,J=v/l,V=u/h,z=m();if(0===k&&0===l&&0===h)throw new RangeError;b/=Math.sqrt(k*k+l*l+h*h);for(k=Math.min(t,q,a);;){if(0<z[0]){if(!O(c,d,f,g)||!O(c,d-1,f,g))return k}else if(0>z[0]&&(!O(c,d,f,g)||!O(c,d+1,f,g)))return k;if(0<z[1]){if(!O(c,d,f,g)||!O(c,d,f-1,g))return k}else if(0>z[1]&&(!O(c,d,f,g)||!O(c,d,f+1,g)))return k;if(0<
z[2]){if(!O(c,d,f,g)||!O(c,d,f,g-1))return k}else if(0>z[2]&&(!O(c,d,f,g)||!O(c,d,f,g+1)))return k;if(t<q)if(t<a){if(t>b)break;k=t;d+=e;t+=L;z[0]=-e;z[1]=0;z[2]=0}else{if(a>b)break;k=a;g+=u;a+=V;z[0]=0;z[1]=0;z[2]=-u}else if(q<a){if(q>b)break;k=q;f+=v;q+=J;z[0]=0;z[1]=-v;z[2]=0}else{if(a>b)break;k=a;g+=u;a+=V;z[0]=0;z[1]=0;z[2]=-u}}return null}function lb(a,b,c){return 0>a||512<=a||0>b||256<=b||0>c||512<=c}function mb(a,b,c,d){var f=fb;lb(a,b,c)||(f.data[32768*(c/4|0)+128*(b|0)+(a/4|0)]=d)}
function O(a,b,c,d){return 0===(lb(b,c,d)?0:a.data[32768*(d/4|0)+128*(c|0)+(b/4|0)])}class nb{constructor(){this.data=new Uint8Array(4194304);this.g=null}L(){this.g&&this.g.L()}}function kb(a,b){return 0>b?kb(-a,-b):(1-(a%1+1)%1)/b};function ob(a,b,c,d,f,g,k,l){f=b+f;k=k||Math.floor(10+4*Math.random());l=void 0!==l?l:Math.floor(3+3*Math.random());var h=Math.random();h=.3>h?20:.6>h?22:.9>h?24:26;P(a,b,c,d,f,g,10);P(a,b,c,d,b,g,10);P(a,f,c,d,f,g,10);pb(a,b,c,d,f,c,1,h,k,l);pb(a,b,g,d,f,g,-1,h,k,l);pb(a,b,c,a,f,g,1,h,k,l);pb(d,b,c,d,f,g,-1,h,k,l)}
function pb(a,b,c,d,f,g,k,l,h,e){for(let v=a;v<=d;v++)for(let u=b;u<=f;u++)for(let t=c;t<=g;t++)a===d&&(t<c+1||t>=g-1)||c===g&&(v<a+1||v>=d-1)||u%h<h-e?mb(v,u,t,10):Math.random()>.2*Math.max(0,Math.min(1,u/100))?mb(v+k,u,t,l+1):mb(v+k,u,t,l)}function P(a,b,c,d,f,g,k){for(;a<=d;a+=4)for(let l=b;l<=f;l+=1)for(let h=c;h<=g;h+=4)mb(a,l,h,k)};let qb=[];function rb(a,b,c,d,f,g){qb.push({x:a,y:b,z:c,ba:.3*(Math.random()-.5),ca:.3*(Math.random()-.4),da:.3*(Math.random()-.5),size:d,color:f,duration:g,$:g})};let sb=[n(480,49,172),n(503,49,172),n(503,95,328),n(408,95,328),n(412,95,256)];class tb{constructor(){this.P=100;this.g=144;this.A=24;this.N=.6;this.W=n(164,96,80);this.J=m();this.H=m();this.K=m();this.aa=!1;this.Y=m();this.Z=!1;this.X=m();this.M=0;this.G=.3;this.U=this.O=1;this.T=.6;this.S=.8;this.D=.18;this.C=.8;this.m=.2;this.F=n(0,1.5,0);this.B=1.5}}let Q=new tb;Q.Z=!0;Q.M=3;p(Q.J,160,80,32);p(Q.H,144,72,24);p(Q.K,144,72,24);p(Q.X,200,224,255);let R=new tb;R.P=25;R.g=100;R.A=32;R.N=.8;R.aa=!0;
R.Z=!0;R.M=2;p(R.Y,0,180,0);p(R.J,72,72,72);p(R.H,164,96,80);p(R.K,64,64,64);p(R.X,192,192,192);let S=new tb;S.g=36;S.A=12;S.N=1.2;S.G=.4;S.O=1.5;S.U=1.5;S.T=1.2;S.S=1.3;S.D=.24;S.C=1.4;S.m=.3;p(S.W,128,128,128);p(S.J,32,32,32);p(S.H,32,32,32);p(S.K,32,32,32);p(S.F,0,2,0);S.B=2;let T=new tb;T.P=600;T.g=36;T.A=6;T.N=2;T.G=.6;T.O=4;T.U=5;T.T=2.4;T.S=3.2;T.D=.6;T.C=2;T.m=.8;T.M=1;p(T.W,160,125,120);p(T.J,32,32,32);p(T.H,32,32,32);p(T.K,32,32,32);p(T.F,0,2.5,0);T.B=2.5;let ub=new tb;p(ub.F,0,0,0);
ub.B=.3;class vb{constructor(a,b){this.duration=a;this.g=b||this}}let wb=new vb(-1),xb=new vb(.2,wb),yb=new vb(.2,xb),zb=new vb(.1,yb),Ab=new vb(.1,zb),Bb=new vb(2,zb),Cb=new vb(.5,wb),Db=new vb(1,new vb(1,wb));function Eb(a){Ca(w,Da,a.B);a.g[0]+=r*a.C.g*w[0];a.g[2]+=r*a.C.g*w[2];Fb(a)}function Gb(a){let b=Math.hypot(a.g[0],a.g[2]);.6>b?(a.g[0]=0,a.g[2]=0):(a.g[0]-=r*a.g[0]/b*72,a.g[2]-=r*a.g[2]/b*72)}function Hb(a,b){a.A=b;a.N=Ib}
function Fb(a){let b=Math.hypot(a.g[0],a.g[2]);b>a.C.A&&(a.g[0]=a.g[0]/b*a.C.A,a.g[2]=a.g[2]/b*a.C.A)}
class U{constructor(a,b,c,d){this.C=a;this.U=a===Q?1:2;this.F=!0;this.D=a.P;this.m=n(b,c,d);this.g=m();this.J=.1;this.B=2*Math.random()*Math.PI;this.M=0;this.A=wb;this.H=this.N=-1;this.T=m();this.S=m();this.K=!1;this.G=1;this.P=m();this.O=0}update(){this.C!==ub&&(this.g[0]-=3*r*this.g[0],this.g[2]-=3*r*this.g[2],this.g[1]-=120*r);if(this.C!==Q&&this.A!==Cb){var a=W.m[0]-this.m[0],b=W.m[1]-this.m[1];let d=W.m[2]-this.m[2],f=Math.hypot(a,d);8>Math.abs(b)&&64>f&&(this.K=!0);10<Math.abs(b)&&(this.K=!1);
if(this.K){if(this.C===R||this.C===T)if(this.C===T&&400>this.D&&5>this.O){var c=sb[this.O];b=c[0]-this.m[0];c=c[2]-this.m[2];2>Math.hypot(b,c)?(T.g=36,T.A=6,T.B=2.5,this.O++):(T.g=288,T.A=40,T.B=.01,this.B=Math.atan2(b,c),Eb(this))}else this.B=Math.atan2(a,d),3<f?Eb(this):(Gb(this),this.A===wb&&Hb(this,Ab));this.C===S&&(this.A===Db?Gb(this):(this.B=Math.atan2(a,d),64<f?Eb(this):(Gb(this),this.A===wb&&(Hb(this,Db),va(this.P,W.m,Q.F)))))}}ya(this.m,this.m,this.g);Jb(this);this.A!==wb&&Ib-this.N>this.A.duration&&
(this.A===Db&&(a=new U(ub,this.m[0],this.m[1]+2.5,this.m[2]),wa(a.g,this.P,a.m),za(a.g,a.g),xa(a.g,a.g,120),a.B=Math.atan2(a.g[0],a.g[2]),X.push(a)),Hb(this,this.A.g))}};let Kb=n(0,1,2),Lb=n(1,0,2),Mb=n(2,0,1);function Jb(a){let b=Math.abs(a.g[0]),c=Math.abs(a.g[1]),d=Math.abs(a.g[2]);b>d?(b>c?(Nb(a),Ob(a)):(Ob(a),Nb(a)),Pb(a)):(d>c?(Pb(a),Ob(a)):(Ob(a),Pb(a)),Nb(a))}function Nb(a){0>a.g[0]?Qb(a,Kb,n(-2,1.5,-1),n(-2,2.5,1),3):Qb(a,Kb,n(2,1.5,-1),n(2,2.5,1),-2)}function Ob(a){0>a.g[1]?Qb(a,Lb,n(-.8,1-r*a.g[1],-.8),n(.8,0,.8),1):Qb(a,Lb,n(-.8,0,-.8),n(.8,3,.8),1)}function Pb(a){0<a.g[2]?Qb(a,Mb,n(-1,1.5,2),n(1,2.5,2),-2):Qb(a,Mb,n(-1,1.5,-2),n(1,2.5,-2),3)}
function Qb(a,b,c,d,f){c[0]=a.m[0]+c[0]|0;c[1]=a.m[1]+c[1]|0;c[2]=a.m[2]+c[2]|0;d[0]=a.m[0]+d[0]|0;d[1]=a.m[1]+d[1]|0;d[2]=a.m[2]+d[2]|0;wa(w,d,c);w[0]=sa(w[0]);w[1]=sa(w[1]);w[2]=sa(w[2]);let g=m();for(g[b[0]]=c[b[0]];;){for(g[b[1]]=c[b[1]];;){for(g[b[2]]=c[b[2]];;){var k=g[0],l=g[1],h=g[2];if(0!==(lb(k,l,h)?0:fb.data[32768*(h/4|0)+128*(l|0)+(k/4|0)])){a.m[b[0]]=g[b[0]]+f;a.g[b[0]]=0;1===b[0]&&(a.M=0);a.C===ub&&(a.F=!1);return}if(g[b[2]]===d[b[2]])break;g[b[2]]+=w[b[2]]}if(g[b[1]]===d[b[1]])break;
g[b[1]]+=w[b[1]]}if(g[b[0]]===d[b[0]])break;g[b[0]]+=w[b[0]]}}function Rb(a,b,c,d){var f=c[0]-a[0];let g=c[1]-a[1];a=c[2]-a[2];var k=d[0]-c[0];let l=d[1]-c[1],h=d[2]-c[2];c=Math.hypot(k,l,h);k/=c;l/=c;h/=c;d=k*k+l*l+h*h;k=2*(k*f+l*g+h*a);f=f*f+g*g+a*a-b*b;if(0>k*k-4*d*f)return null;b=(-1*k+Math.sqrt(Math.pow(k,2)-4*d*f))/(2*d);f=(-1*k-Math.sqrt(Math.pow(k,2)-4*d*f))/(2*d);return 0<=b&&b<c||0<=f&&f<c?Math.min(b,f):0<=b&&b<c?b:0<=f&&f<c?f:null};class Sb{constructor(a,b,c,d,f){this.g=n(a,b,c);this.m=n(d,0,f)}};function Tb(a,b){a.H=Ib;a.D-=b;if(0>=a.D){a.D=0;a.F=!1;a===W?(Ub=!0,Vb=new Wb,Xb("First Death!")):Xb("First Kill!");a===Yb&&(Ub=!0,Vb=new Zb,Xb("Winner!"));b=a.m[0];var c=a.m[1]+1.5,d=a.m[2],f=x(192,0,0);for(var g=0;80>g;g++)rb(b,c,d,2,f,40)}else{b=a.m[0];c=a.m[1]+1.5;d=a.m[2];f=x(192,0,0);for(g=0;20>g;g++)rb(b,c,d,1,f,10);a!==W&&(Hb(a,Cb),a===Yb&&(Hb(W,Cb),wa(W.g,W.m,Yb.m),za(W.g,W.g),xa(W.g,W.g,100),W.g[1]=30))}p(a.g,0,0,0)}function $b(){return Math.random()-.5};let ac=document.querySelectorAll("canvas"),bc=ac[0],cc=ac[1],N=cc.getContext("2d"),K=new Va,G=bc.getContext("webgl",{alpha:!1});window.addEventListener("resize",dc,!1);dc();cc.addEventListener("mousedown",function(a){da.resume();I.buttons[a.button].I=!0});cc.addEventListener("mouseup",function(a){I.buttons[a.button].I=!1});cc.addEventListener("mousemove",function(a){I.x=a.pageX;I.y=a.pageY;Ub||(W.B=ra(W.B+I.sensitivity*a.movementX),W.J=ra(W.J+I.sensitivity*a.movementY))});
document.addEventListener("pointerlockchange",function(){I.g=document.pointerLockElement===cc||document.mozPointerLockElement===cc?!0:!1});let X=[],W=null,Yb=null,ec=[];for(let a=0;20>a;a++)ec.push(new Sb(512*Math.random(),150,128,120,0)),ec.push(new Sb(512*Math.random(),160,384,-120,0)),ec.push(new Sb(128,170,512*Math.random(),0,-120)),ec.push(new Sb(384,180,512*Math.random(),0,120));let fb=new nb,fc=.001*Date.now(),Ib=0,r=.0167,gc=!1,Ub=!0,eb=!1,hc=m(),ic=m(),jc=null,Qa=new gb;
function Xb(a){localStorage["OS13kTrophy,\u2694\ufe0f,MINIPUNK,"+a]=""}P(0,0,0,511,0,511,10);for(let a=0;512>a;a+=64)ob(a,0,0,a+63,128,31),ob(a,0,480,a+63,128,511);for(let a=0;512>a;a+=64)ob(0,0,a,31,128,a+63),ob(480,0,a,511,128,a+63);
for(let a=0;512>a;a+=128)for(let b=0;512>b;b+=128){let c=96;256<=a&&480>=a&&128<=b&&384>b?c=24:P(a+14,25,b+14,a+114,25,b+114,9);P(a+24,0,b+24,a+103,Math.max(24,c-8),b+103,10);ob(a+20,0,b+20,a+59,c,b+59);ob(a+20,0,b+68,a+59,c,b+107);ob(a+68,0,b+20,a+107,c,b+59);ob(a+68,0,b+68,a+107,c,b+107)}P(0,0,0,511,24,103,10);P(104,0,152,151,24,231,10);P(344,0,152,407,24,231,10);P(152,0,280,511,24,511,10);P(0,24,0,511,24,511,10);P(120,24,444,124,24,468,0);for(let a=0;24>a;a++)P(120,1,380+4*a,124,1+a,384+4*a,10);
P(152,24,280,232,92,511,10);P(280,25,142,511,25,354,3);ob(380,24,160,511,60,352,10,0);ob(420,84,180,511,60,332,10,0);ob(430,144,200,511,60,312,10,0);P(418,110,292,419,133,299,24);P(418,110,284,419,117,291,24);P(418,94,276,419,133,283,24);P(418,94,260,419,133,267,24);P(418,126,252,419,133,259,24);P(418,94,252,419,101,259,24);P(418,94,244,419,133,251,24);P(418,110,228,419,133,235,24);P(418,110,220,419,117,227,24);P(418,94,212,419,133,219,24);for(let a=0;24>a;a++)P(284+4*a,24,236,288+4*a,24+a,276,10);
P(380,48,236,380,58,276,0);P(384,48,164,504,83,351,0);for(let a=384;504>a;a+=4)for(let b=164;351>b;b+=4)0===((a>>2)+(b>>2))%2?mb(a,48,b,29):mb(a,48,b,10);P(496,48,164,496,84,351,28);P(496,48,164,504,48,351,28);P(496,49,168,496,58,175,0);for(let a=184;328>=a;a+=24)if(256!==a)for(let b=388;504>=b;b+=24)P(b,48,a,b+1,83,a+1,29);P(500,49,176,507,100,330,0);for(let a=0;38>a;a++){let b=Math.min(49+a,84);P(500,b,176+4*a,507,b,179+4*a,28)}P(420,84,324,504,84,330,28);P(420,85,324,504,100,330,0);
{var Y=fb;let a=0,b=6;for(let c=0;128>c;c++)for(let d=0;256>d;d++)for(let f=0;128>f;f++){if(0===Y.data[a++])continue;let g=4*f,k=d,l=4*c;O(Y,g,k+1,l)&&b++;O(Y,g,k-1,l)&&b++;O(Y,g,k,l+4)&&b++;O(Y,g,k,l-1)&&b++;O(Y,g-1,k,l)&&b++;O(Y,g+4,k,l)&&b++}Y.g=new Sa(35044,b);{var kc=Y.g,lc=x(124,173,203);let c=n(-2048,2048,2048),d=n(2048,2048,2048),f=n(2048,2048,-2048),g=n(-2048,2048,-2048),k=n(-2048,-2048,2048),l=n(2048,-2048,2048),h=n(2048,-2048,-2048),e=n(-2048,-2048,-2048);E(kc,[c,d,f,g],lc);E(kc,[e,h,l,
k],lc);E(kc,[d,c,k,l],lc);E(kc,[g,f,h,e],lc);E(kc,[c,g,e,k],lc);E(kc,[f,d,l,h],lc)}a=0;for(let c=0;128>c;c++)for(let d=0;256>d;d++)for(let f=0;128>f;f++){let g=Y.data[a++];if(0===g)continue;let k=ib(g),l=4*f,h=d,e=4*c,v=l+4,u=h+1,t=e+4,q=n(l,u,t),L=n(v,u,t),J=n(v,u,e),V=n(l,u,e),z=n(l,h,t),Z=n(v,h,t),B=n(v,h,e),C=n(l,h,e);O(Y,l,h+1,e)&&E(Y.g,[q,L,J,V],k);O(Y,l,h-1,e)&&E(Y.g,[C,B,Z,z],k);O(Y,l,h,e+4)&&E(Y.g,[L,q,z,Z],k);O(Y,l,h,e-1)&&E(Y.g,[V,J,B,C],k);O(Y,l-1,h,e)&&E(Y.g,[q,V,C,z],k);O(Y,l+4,h,e)&&
E(Y.g,[J,L,Z,B],k)}Ra(Y.g)}(function(a){ha(b=>a(ca(b)))})(a=>{qa(a,!0)});ja({a:8,b:0,d:0,e:1,f:160,h:8,i:0,j:0,k:1,l:99,n:60,o:50,q:200,r:6800,s:125,t:4,u:11025,v:254,w:0,x:13,y:5,z:0},134,a=>{na=a});ja({a:7,b:3,d:140,e:1,f:196,h:6,i:0,j:9,k:0,l:0,n:0,o:927,q:1584,r:4611,s:192,t:4,u:948,v:196,w:0,x:0,y:0,z:1},138,a=>{oa=a});ja({a:7,b:3,d:140,e:1,f:196,h:6,i:0,j:9,k:0,l:0,n:0,o:4611,q:1403,r:11102,s:192,t:4,u:948,v:196,w:0,x:0,y:0,z:1},144,a=>{pa=a});
function mc(a){gc=gc||I.g;I.g||(Ub=!0);a*=.001;r=Math.max(.004,a-fc);fc=a;Ub||(Ib+=r);for(a=0;256>a;a++)Ua(H[a]);for(a=0;3>a;a++)Ua(I.buttons[a]);a=Qa.C;a.H=0;a.g=0;a.C=0;I.g||Vb||(Vb=new nc);if(Vb)Vb.update();else{if(!Ub){Ca(w,Da,W.B);if(W.A===Bb){wa(W.g,jc.m,W.m);var b=W.g;a=b[0];var c=b[1];b=b[2];a=Math.sqrt(a*a+c*c+b*b);4>a?(p(W.g,0,0,0),Hb(W,zb)):(za(W.g,W.g),xa(W.g,W.g,180))}else if(W.A!==Cb){a=!0;if(H[38].I||H[87].I||H[90].I)W.g[0]+=r*Q.g*w[0],W.g[2]+=r*Q.g*w[2],a=!1;if(H[40].I||H[83].I)W.g[0]-=
r*Q.g*w[0],W.g[2]-=r*Q.g*w[2],a=!1;if(H[37].I||H[65].I||H[81].I)W.g[0]-=.5*r*Q.g*w[2],W.g[2]+=.5*r*Q.g*w[0],a=!1;if(H[39].I||H[68].I)W.g[0]+=.5*r*Q.g*w[2],W.g[2]-=.5*r*Q.g*w[0],a=!1;Fb(W);a&&Gb(W);1===H[32].V&&1>=W.M&&(W.g[1]=30,W.M++,qa(oa));W.A===wb&&1===I.buttons[0].V&&(eb&&jc?(W.G=2,Hb(W,Bb)):(W.G=1,Hb(W,Ab)),qa(pa))}eb=I.buttons[2].I;for(a=0;a<X.length;a++)X[a].update();var d=!0;for(a=c=0;d&&10>c;)for(d=!1,c++,b=0;b<X.length-1;b++){var f=X[b];if(f.F)for(var g=b+1;g<X.length;g++){var k=X[g];if(k.F&&
!(f.m[1]>k.m[1]+2.5||k.m[1]>f.m[1]+2.5)){var l=f.m[0]-k.m[0],h=f.m[2]-k.m[2],e=Math.hypot(l,h);2>e&&(k.C===ub?f.C===Q&&(Tb(f,50),k.F=!1,a++):(d=l-l/e*2,h-=h/e*2,f.m[0]-=d,f.m[2]-=h,k.m[0]+=d,k.m[2]+=h,e=ta(f.g),l=ta(k.g),p(f.g,-d,0,-h),p(k.g,d,0,h),Jb(f),Jb(k),ua(f.g,e),ua(k.g,l),d=!0))}}}for(c=0;c<X.length;c++)if(b=X[c],b.F&&b.A===zb)for(f=0;f<X.length;f++)c!==f&&(g=X[f],!g.F||b.U===g.U||.01<1-Math.max(0,Math.min(1,(Ib-g.H)/.5))||b.m[1]>g.m[1]+2.5||g.m[1]>b.m[1]+2.5||(k=ta(g.m),va(k,k,g.C.F),null!==
Rb(k,g.C.B,b.T,b.S)&&(Tb(g,25*b.G),a++)));0<a&&qa(na);for(a=X.length-1;0<=a;a--)X[a].F||X.splice(a,1);W.D<Q.P&&5<Ib-W.H&&(W.D=Math.min(100,W.D+33*r));if(W.A!==Bb&&eb){a=W.m;c=64;b=null;for(f=1;f<X.length;f++)g=X[f],k=Math.hypot(g.m[0]-a[0],g.m[1]-a[1],g.m[2]-a[2]),k<c&&(d=ta(g.m),va(d,d,g.C.F),null!==Rb(d,g.C.B,hc,ic)&&(c=k,b=g));jc=b}}a=Qa.g;a.C=W.J;a.D=W.B;a.m[0]=.5*a.m[0]+.5*W.m[0];a.m[1]=.5*a.m[1]+.5*(W.m[1]+3.5);a.m[2]=.5*a.m[2]+.5*W.m[2];Aa(w,Da,a.C);Ca(w,w,a.D);xa(w,w,-1);c=eb?3:16;b=jb(a.m,
c);c=null!==b?.9*b:c;a.B=c<a.B?c:.9*a.B+(1-.9)*c;a.A[0]=a.m[0]+a.B*w[0];a.A[1]=a.m[1]+a.B*w[1];a.A[2]=a.m[2]+a.B*w[2];a.g[0]=.5*a.g[0]+.5*a.A[0];a.g[1]=.5*a.g[1]+.5*a.A[1];a.g[2]=.5*a.g[2]+.5*a.A[2];eb&&(ua(hc,a.g),xa(w,w,-64),va(ic,hc,w))}for(a=0;a<ec.length;a++)c=ec[a],ya(c.g,c.g,c.m),-100>c.g[0]&&(c.g[0]+=712),612<c.g[0]&&(c.g[0]-=712),-100>c.g[2]&&(c.g[2]+=712),612<c.g[2]&&(c.g[2]-=712);for(d=0;d<X.length;d++)if(a=X[d],h=a.C,e=Ka(),h===ub)La(e,0,0,0,.3,.3,.3),A(e,e,a.B),y(e,e,a.m),Pa(e,x(255,
0,0));else{c=Ib/h.N%1*2*Math.PI;b=.01<Math.hypot(a.g[0],a.g[2]);var v=1-Math.max(0,Math.min(1,(Ib-a.H)/.5));f=m();b&&p(f,0,.2*(.5+Math.sin(2*c)),0);l=Ia(h.W,v);var u=Ia(h.Y,v),t=Ia(h.J,v);g=Ia(h.H,v);k=Ia(h.K,v);v=Ia(h.X,v);var q=h.U/2,L=h.O/2,J=h.T/2,V=h.S/2,z=h.C/2,Z=h.C+h.O,B=a.m[0],C=a.m[1],F=a.m[2],D=(Ib-a.N)/a.A.duration,la=0;a.A===Ab?la=D:a.A===zb?la=1-2*D:a.A===yb?la=-1:a.A===xb&&(la=-1+D);La(e,0,0,0,h.G,h.G,h.G);Oa(e,1,.9);A(e,e,.2*la);A(e,e,a.B);y(e,e,n(B,C+Z+h.G,F));y(e,e,f);Pa(e,l);a.C===
R&&(La(e,0,0,0,.15,.3,.3),y(e,e,n(0,2.2,-.1)),A(e,e,.2*la),A(e,e,a.B),y(e,e,n(B,C,F)),y(e,e,f),Pa(e,u));a.C===S&&(La(e,0,0,0,.2,.2,.2),y(e,e,n(0,3.3,.3)),A(e,e,.2*la),A(e,e,a.B),y(e,e,n(B,C,F)),y(e,e,f),Pa(e,Ha(0,1,a.A===Db?.5+.5*D:.5)));La(e,0,0,0,q,L,J);Oa(e,1,.8);A(e,e,la);A(e,e,a.B);y(e,e,n(B,C+h.C+L,F));y(e,e,f);Pa(e,t);0<h.M&&(l=h.M/2,La(e,0,0,0,.1,l,.1),Oa(e,.2,1),y(e,e,n(0,l,0)),a.A===Ab?(Ma(e,e,.5*D),A(e,e,2.5)):a.A===zb?(Ma(e,e,.5+D),A(e,e,2.5-4*D),y(e,e,n(0,0,D))):a.A===yb?(Ma(e,e,1.5),
A(e,e,-1.5),y(e,e,n(0,0,1))):a.A===xb&&(Ma(e,e,1.5-1.5*D),A(e,e,-1.5+4*D),y(e,e,n(0,0,1-D))),b?y(e,e,n(.7+.05*Math.sin(c),0,.2-.2*Math.sin(c))):y(e,e,n(.8,0,.2)),A(e,e,a.B),y(e,e,n(B,C+1,F)),y(e,e,f),a!==Yb&&Pa(e,v),ua(a.T,e[4]),ua(a.S,e[0]));La(e,0,0,0,h.D,V,h.D);Oa(e,.7,1);y(e,e,n(0,-V,0));Na(e,e,-.1);b&&a.A===wb&&Ma(e,e,-.6*Math.sin(c));y(e,e,n(-q-.1,Z,0));A(e,e,la);A(e,e,a.B);y(e,e,n(B,C,F));y(e,e,f);Pa(e,g);La(e,0,0,0,h.D,V,h.D);Oa(e,.7,1);y(e,e,n(0,-V,0));Na(e,e,.1);b&&a.A===wb&&Ma(e,e,.6*Math.sin(c));
y(e,e,n(q+.1,Z,0));A(e,e,la);A(e,e,a.B);y(e,e,n(B,C,F));y(e,e,f);Pa(e,g);La(e,0,0,0,h.m,z,h.m);Oa(e,.8,1);y(e,e,n(0,-z,0));b&&Ma(e,e,Math.sin(c));y(e,e,n(.9*-q+h.m,h.C,0));A(e,e,a.B);y(e,e,n(B,C,F));y(e,e,f);Pa(e,k);La(e,0,0,0,h.m,z,h.m);Oa(e,.8,1);y(e,e,n(0,-z,0));b&&Ma(e,e,-Math.sin(c));y(e,e,n(.9*q-h.m,h.C,0));A(e,e,a.B);y(e,e,n(B,C,F));y(e,e,f);Pa(e,k)}a=Ka();for(c=0;c<ec.length;c++)b=ec[c],La(a,b.g[0],b.g[1],b.g[2],4,2,4),Pa(a,x(255,128,64));for(a=qb.length-1;0<=a;a--)c=qb[a],b=c.$/c.duration*
c.size,E(Qa.C,[n(c.x+$b()*b,c.y+$b()*b,c.z+$b()*b),n(c.x+$b()*b,c.y+$b()*b,c.z+$b()*b),n(c.x+$b()*b,c.y+$b()*b,c.z+$b()*b),n(c.x+$b()*b,c.y+$b()*b,c.z+$b()*b)],c.color),0>=--c.$?qb.splice(a,1):(c.x+=c.ba,c.y+=c.ca,c.z+=c.da);a=Qa;Ra(a.C);a.B.bind();a.N.bind();db(a);a.G[0].bind();db(a);a.A.bind();G.enable(3042);G.blendFunc(1,1);c=a.G[0];b=a.G[1];for(f=0;5>f;f++)b.bind(),G.clearColor(0,0,0,0),G.clear(16384),G.disable(2929),G.activeTexture(33984),G.bindTexture(3553,c.g),G.uniform1i(a.A.C,0),G.uniform1i(a.A.B,
f),g=a,G.bindBuffer(34962,g.H),G.vertexAttribPointer(g.A.A,2,5126,!1,0,0),G.bindBuffer(34962,g.J),G.vertexAttribPointer(g.A.m,2,5126,!1,0,0),G.drawArrays(4,0,6),g=c,c=b,b=g;K.bind();a.K.bind();G.clearColor(0,0,0,1);G.clear(16384);G.disable(3042);G.activeTexture(33984);G.bindTexture(3553,a.N.g);G.activeTexture(33985);G.bindTexture(3553,c.g);G.uniform1i(a.K.A,0);G.uniform1i(a.K.m,1);G.bindBuffer(34962,a.H);G.vertexAttribPointer(a.A.A,2,5126,!1,0,0);G.bindBuffer(34962,a.J);G.vertexAttribPointer(a.A.m,
2,5126,!1,0,0);G.drawArrays(4,0,6);N.clearRect(0,0,K.width,K.height);N.textBaseline="top";Vb?Vb.L():(N.font="bold 24px 'Arial Black'",N.textAlign="left",N.fillStyle="#fff",N.fillRect(30,30,W.D,20),N.fillStyle="#888",N.fillRect(30+W.D,30,100-W.D,20),M(Ib.toFixed(1),K.width-100,30),eb&&(a=K.g,c=K.m,b=jc?"#f00":"#fff",hb(a+1,c+1,"#000"),hb(a,c,b||"#fff")));requestAnimationFrame(mc)}requestAnimationFrame(mc);
function oc(){X=[];W=new U(Q,384,2,128);W.B=1.5*Math.PI;X.push(W);for(var a=128;256>=a;a+=128)for(var b=128;256>=b;b+=128)X.push(new U(R,b,2,a)),256>b&&X.push(new U(R,b+6,2,a+6));for(a=128;384>=a;a+=128)for(b=128;256>=b;b+=128)if(128!==b||384!==a)X.push(new U(R,b-6,26,a)),X.push(new U(R,b+6,26,a)),X.push(new U(R,b,26,a-6)),X.push(new U(R,b,26,a+6)),256<=b&&X.push(new U(S,b,26,a));X.push(new U(S,414,85,208));X.push(new U(S,414,85,232));X.push(new U(S,414,85,280));X.push(new U(S,414,85,304));Yb=new U(T,
460,49,256);Yb.B=1.5*Math.PI;Yb.G=4;X.push(Yb);X.push(new U(S,400,49,236));X.push(new U(S,400,49,276));X.push(new U(S,460,49,236));X.push(new U(S,460,49,276));Ib=0;Ub=!1;Vb=new pc;cc.requestPointerLock()}function qc(){Ub=!1;Vb=null;cc.requestPointerLock()}function rc(a){ka.gain.value=a}function sc(a){ma.gain.value=a}function tc(a){I.sensitivity=.002*a}function uc(){let a=fc/100%1*2*Math.PI;Qa.g.set(200-200*Math.cos(a),300,256+256*Math.sin(a),.3*Math.PI,.5*Math.PI+a)}
function vc(){N.fillStyle="rgba(0,0,0,0.5)";N.fillRect(0,0,K.width,K.height)}function wc(){N.font="bold 80px 'Arial Black'";M("MINIPUNK",10,10)}class xc{constructor(a,b,c,d,f,g){this.B=a;this.x=b;this.y=c;this.w=d;this.A=f;this.m=g;this.enabled=!0;this.g=!1}update(){this.g=!1;this.enabled&&I.x>this.x&&I.y>this.y&&I.x<this.x+this.w&&I.y<this.y+this.A&&(this.g=!0,1===I.buttons[0].R&&this.m())}L(){M(this.B,this.x,this.y,this.enabled?this.g?"#ff0":"#fff":"#888")}}
class yc{constructor(a,b,c,d,f,g){this.x=a;this.y=b;this.w=c;this.g=d;this.m=f;this.A=g}update(){if(I.buttons[0].I&&I.x>this.x&&I.y>this.y&&I.x<this.x+this.w&&I.y<this.y+this.g){let a=(I.x-this.x)/this.w;.01<Math.abs(this.m-a)&&(this.m=a,this.A(a))}}L(){let a=this.w*this.m|0,b=this.w-a;N.fillStyle="#fff";N.fillRect(this.x,this.y,a,this.g);N.fillStyle="#888";N.fillRect(this.x+a,this.y,b,this.g)}}
class zc{update(){1===I.buttons[0].R&&(Vb=new nc);gc||uc()}L(){vc();wc();N.font="bold 40px 'Arial Black'";M("CLICK TO START",60,150)}}
class nc{constructor(){this.g=[new xc("NEW GAME",60,150,300,40,oc),new xc("CONTINUE",60,210,300,40,qc)];this.m=[new yc(220,318,200,20,ka.gain.value,rc),new yc(220,358,200,20,ma.gain.value,sc),new yc(220,398,200,20,I.sensitivity/.002,tc)]}update(){this.g[1].enabled=gc;this.g.forEach(a=>a.update());this.m.forEach(a=>a.update());gc||uc()}L(){vc();wc();N.font="bold 40px 'Arial Black'";this.g.forEach(a=>a.L());M("SETTINGS",60,270);M("KEY GUIDE",60,450);N.font="20px 'Arial Black'";M("MUSIC",110,320);M("SOUND",
110,360);M("MOUSE",110,400);this.m.forEach(a=>a.L());M("WASD - MOVE",110,500);M("LEFT CLICK - ATTACK",110,540);M("RIGHT CLICK - ZOOM",110,580);M("SPACEBAR - JUMP",110,620);M("TIP: TRY ZOOM + ATTACK",110,680)}}
class pc{constructor(){this.g=fc}update(){1===I.buttons[0].R&&(Vb=null);let a=Math.max(0,Math.min(20,fc-this.g-1));Qa.g.set(450-20*a,54+.25*a*a,256,.005*a*Math.PI,.5*Math.PI)}L(){N.font="bold 32px 'Arial Black'";M("THE EVIL 404 MEGACORP",20,K.height-300);M("THREATENS TO TAKE OVER THE INTERNET",20,K.height-250);M("YOU MUST STOP THEM",20,K.height-175);21<fc-this.g&&M("CLICK TO CONTINUE",20,K.height-100)}}
class Wb{constructor(){this.g=fc}update(){1<fc-this.g&&1===I.buttons[0].R&&(document.exitPointerLock(),Vb=new nc,gc=!1)}L(){vc();wc();N.font="bold 40px 'Arial Black'";M("YOU DIED",60,150);M("CLICK TO CONTINUE",60,250)}}
class Zb{constructor(){this.g=fc}update(){2<fc-this.g&&1===I.buttons[0].R&&(document.exitPointerLock(),Vb=new nc,gc=!1)}L(){vc();wc();N.font="bold 40px 'Arial Black'";M("YOU DEFEATED THE EVIL 404 MEGACORP",60,150);M("THE INTERNET SURVIVES!",60,200);M("HTTP 200 OK  (\u261e\uff9f\u30ee\uff9f)\u261e",60,300);M("FINAL TIME: "+Ib.toFixed(1),60,400);M("CLICK TO CONTINUE",60,500)}}let Vb=new zc;
function dc(){K.width=window.innerWidth;K.height=window.innerHeight;K.g=K.width/2|0;K.m=K.height/2|0;bc&&(bc.width=K.width,bc.height=K.height);cc&&(cc.width=K.width,cc.height=K.height)};
</script>


</body></html>